package com.guang.base;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

public interface BizService<T extends BizEntity> extends IService<T> {

    /**
     * 获取单条记录
     */
    T get(T t);

    /**
     * 是否存在
     */
    boolean exists(T t);

    /**
     * 是否存在
     */
    boolean exists(Wrapper<T> queryWrapper);

    /**
     * 获取单条记录
     */
    T get(Wrapper<T> queryWrapper);

    /**
     * 依据不为空的字段进行查询
     */
    List<T> list(T t);

    /**
     * 依据不为空的字段进行查询
     */
    <E extends IPage<T>> E page(E page, T t);

    /**
     * 根据ids集合，ids多条使用逗号分隔
     */
    List<T> getBySplitIds(String ids);

}
